﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GmailMetroNotifier.Client.Business
{
    /// <summary>
    /// Exposes the status of an e-mail account.
    /// </summary>
    public class AccountStatus
    {
        /// <summary>
        /// Gets or sets the number of unread e-mails.
        /// </summary>
        public int UnreadCount { get; set; }
        
        /// <summary>
        /// Gets or sets the modification date of the query that originated this status.
        /// </summary>
        public DateTime ModificationDate { get; set; }

        /// <summary>
        /// Gets whether this account status has been modified since it was last queried.
        /// </summary>
        public bool IsModified { get; private set; }

        /// <summary>
        /// Initializes a new instance setting whether it is modified or not.
        /// </summary>
        /// <param name="isModified">States whether the account status has been modified since it was last queried.</param>
        public AccountStatus(bool isModified)
        {
            this.UnreadCount = 0;
            this.ModificationDate = new DateTime();
            this.IsModified = isModified;
        }
    }
}
